function foo(){

}

// console.log(foo.prototype)
console.log(Object.getOwnPropertyDescriptors(foo.prototype),'111111')

// Object.defineProperty(foo.prototype,"constructor",{
//     enumerable:true,
//     configurable:true,
//     writable:true,
//     value:"hahhah"
// })
// console.log(foo.prototype)

// 验证了foo.prototype这个对象中有一个constructor属性 标准设定添加的
// console.log(foo.prototype.constructor)
// console.log(foo.prototype.constructor.name)
console.log(Object.getOwnPropertyDescriptors(foo.prototype),'222')
// 3.直接修改整个prototype对象
foo.prototype={
    // constructor:foo,最好不要这样做
    name:"why",
    // age:18,
    // height:1.88
}
console.log(Object.getOwnPropertyDescriptors(foo.prototype),'333')
var f1 = new foo()
console.log(Object.getOwnPropertyDescriptors(foo.prototype),'444')
// 
Object.defineProperty(foo.prototype,"constructor",{
    enumerable:false,
    configurable:true,
    writable:true,
    value:foo
})
// console.log(f1.name,f1.age,f1.height)
console.log(Object.getOwnPropertyDescriptors(foo.prototype),'5555')
// 